The normal human visual system is trichromatic in nature, meaning that visual color can be described mathematically as a three-dimensional space. A number of different three-dimensional color spaces have been used to represent visual color. Most notable are the well-known color spaces defined by the Commission Internationale de l'Eclairage (CIE), such as CIE XYZ, CIELAB (L*a*b*), and CIELUV (L*u*v*). In these color spaces, a point represents a color that is visually distinct from those represented by other points in that space. They are often referred to as device-independent color spaces since they can be used to represent visual color independent of what device may have been used to create the color. Device-independent color values are generally determined by measuring the spectral content of an image sample using a spectrophotometer, and then performing a series of required calculations associated with the definition of the color space. Alternatively, device-independent color values can be measured directly with a measuring device such as a colorimeter.
Color imaging devices are used to display or print digital image content for many applications ranging from softcopy computer displays, to desktop printers for personal computers, to high-volume graphic arts printing presses. A corollary of the trichromatic nature of color vision is that the satisfactory reproduction of colors requires the use of at least 3 independent colorants. Most softcopy display devices make use of three additive color primaries, typically red, green and blue (abbreviated as RGB). Most hardcopy color printing devices make use of at least three chromatic colorants, typically cyan, magenta and yellow (abbreviated as CMY). In addition, color printing devices may use an achromatic, or black colorant (abbreviated as K). In some cases, light colorants, such as light cyan and light magenta, or additional chromatic colorants, such as red, blue, green or orange may also be used.
For color imaging devices that use three colorants, there will generally be a unique one-to-one relationship between the device colorant control values (e.g., RGB code values), and the resulting device-independent color values (e.g., L*a*b*) produced by the device. In many applications, it will be desirable to determine what device colorant control values are needed to produce a desired set of device-independent color values. This can be done by building a model to represent this one-to-one relationship.
FIG. 1 illustrates a prior art method for producing a desired color on a three-channel RGB color imaging device. First, a forward device model 12 is formed relating the RGB device code values 10 to corresponding device-independent color values 14 in a color space such as L*a*b*. Such forward device models 12 can sometimes be determined by modeling the physics of the color imaging device, for example accounting for the phosphor colors and nonlinear response of a softcopy display system. In other cases, forward device models 12 can be determined empirically by printing (or displaying) patches with known RGB device code values 10, and measuring the resulting device-independent color values 14. A mathematical model can then be determined by fitting the measured data. The mathematical model can be a parametric model, or can take other forms such as a three-dimensional look-up table (LUT) storing device-independent color values 14 for a lattice of RGB device code values 10.
A build three-channel inverse device model step 16 is then used to determine an inverse device model 18 from the forward device model 12. The inverse device model 18 can be used to determine the RGB device code values 10 necessary to produce a desired set of device-independent color values 14. Since there is generally a one-to-one relationship between the RGB device code values 10 and the device-independent color values 14, there will be a unique inverse transform for all colors within the color gamut of the color imaging device. (The term color gamut refers to the range of colors that can be produced on a given color imaging device.) In some cases, it may be possible to mathematically invert the forward device model depending on its functional form. In other cases, interpolation methods or iterative techniques can be used to determine the inverse device model. For example, see the article “Colorimetric calibration in electronic imaging devices using a look-up table model and interpolations” by P. Hung (Journal of Electronic Imaging, Vol. 2(1), pp. 53-61, 1993).
Inverse device models 18 are commonly used by color management systems, where they are often referred to as “output device profiles.” Often an output device profile for a particular output device is combined with a forward device model for a particular input device (commonly referred to as an “input device profile”) to form a color-managed color transform that can be used to transform the input device code values to the corresponding device code values that will produce the same device-independent color values on the output device.
FIG. 2 illustrates an analogous method for producing a desired color on a 4-channel CMYK color printing device. First, a forward device model 22 is formed relating CMYK device code values 20 to corresponding device-independent color values 24 in a color space such as L*a*b*. A build 4-channel inverse device model step 26 is then used to determine an inverse device model 28 from the forward device model 22. The inverse device model 28 can be used to determine the CMYK device code values 20 necessary to produce a desired set of device-independent color values 24.
While the methods shown in FIG. 1 and FIG. 2 appear to be quite similar, the problem of determining an inverse device model is actually significantly more complicated for color imaging devices using four or more colorants, such as devices that utilize CMYK colorants. Since the colorant control value space in a CMYK system has a higher number of dimensions (4) than device-independent color spaces (3), there is typically no unique way to reproduce a given visual color. Generally, there will an infinite number of CMYK combinations that can be used to produce a given device-independent color. The resulting ambiguity has to be resolved by imposing additional constraints in order to determine the CMYK values that should be used to produce a desired device-independent color.
Historically, simple mathematical equations have been used to convert scanner RGB values to CMYK values for offset printing presses for use in the graphic arts industry. For example, a simple complement function can be used to determine CMY color values from input RGB color valuesC=1−R M=1−G Y=1−B Subsequently, a K color value is generated in order to add black to the CMY overprints. In the simplest case, the K color value can be determined as a function of the minimum of the CMY color values (for example, see U.S. Pat. No. 4,482,917). When black is added to an overprint, the CMY color values should generally be reduced accordingly, in order to keep the color from being darkened.
Various strategies have been developed in the printing industry for using more or less black in printing various colors, and for adjusting the amounts of the chromatic colorants. These techniques are sometimes referred to as Under Color Removal (UCR), Grey Component Replacement (GCR) or Under Color Addition (UCA) methods. Unfortunately, these terms have been used differently by different writers and have lost the precise meaning they once may have had. Most of these earlier methods do not automatically preserve color fidelity to a high degree of accuracy because the conversion of RGB to CMY and the conversion of CMY to CMYK are not based on accurate colorimetric models of the color reproduction process.
A number of methods have been proposed to address the need of determining colorimetrically accurate inverse device models for CMYK color printing devices. In U.S. Pat. No. 5,402,253, Van de Capelle et al. disclose a method where K is treated as an extra dimension that must be assigned a specific value by imposing an additional constraint or relation that becomes a condition imposed on an iterative search for an inverse.
In U.S. Pat. Nos. 5,305,119 and 5,528,386, Rolleston et al. similarly impose a relation between K and CMY. However, their method establishes the form of this relation prior to the colorimetric characterization. The model is defined over a three-dimensional space, and the 4-dimensional ambiguity is avoided from the beginning. Color patches are printed and measured with the imposed relation, resulting in a three dimensional model that can be inverted.
In U.S. Pat. No. 5,553,199, Spaulding et. al disclose a method for producing inverse device models which involves creating data structures that can be used to determine minimum and maximum black levels using conventional three-dimensional inverse interpolation. A K value can then be determined using a functional relationship, and another conventional three-dimensional inverse interpolation can then be used to find the appropriate CMY values.
In U.S. Pat. No. 5,857,063, Poe et al. disclose a method for controlling the color of a multi-colorant printing system that includes defining a transform from a three-dimensional parameter space to the colorant control space. The basic method that they employed is summarized in the flowchart given in FIG. 3. A color mapping function 31 (referred to as S(c,m,y)) is defined which specifies a mapping from a three-channel parameter space with cmy parameter space code values 30 to CMYK device code values 32. The color mapping function 31 controls the usage of K relative to the usage of CMY, and is specified by a series of functional relationships with various control parameters. The color mapping function 31 can be combined with a forward device model 33 (referred to as R(C,M,Y,K)) to form a composite transform 35 (referred to as T(c,m,y)). The composite transform 35 can be used to transform from the cmy parameter space code values 30 to corresponding device-independent color values 34 in a color space such as L*a*b*. Since the composite transform 35 has three input dimensions and three output dimensions, it can be directly inverted using a build inverse composite transform step 36 to form an inverse composite transform 37, which can be used to transform from device-independent color values 34 back to corresponding cmy parameter space code values 30.
FIG. 4 illustrates how this inverse composite transform 37 can be combined with the color mapping function 31 to form an inverse device model 38. (The same part numbers are used here as were used in FIG. 3 to refer to the identical elements.) The resulting inverse device model 38 can then be used to determine the CMYK device code values 32 that will produce a desired set of device-independent color values 34. The inverse device model 38 is the key result which is required to form a color management output profile, or a color transform from a known input device to the color printing device.
As mentioned above, the color mapping function 31 plays the important role of controlling the usage of K relative to the usage of CMY throughout the color gamut of the printer. The functional relationships disclosed by Poe et al. provide many degrees of freedom to control this relationship. However, they do not provide any mechanism for flexibly and independently controlling this relationship for different parts of color space in order to enable making tradeoffs between color gamut, image noise (i.e., unwanted spatial variations in the image, sometime referred to as “graininess”), ink usage, etc. differently as a function of color. Additionally, there is no means for conveniently using this method to control CMYK process variability.
U.S. Pat. No. 7,535,596 to Spaulding et al., entitled “Colorant control values for color printing devices,” discloses a method for building color transforms which includes independently defining color mappings for a set of paths through color space. An interpolation technique is used to determine color mappings for the rest of the color space. This enables more flexibility to control the colorant usage in different parts of color space. However, only a limited degree of control is possible due to the fact that the color mappings are only explicitly defined along the neutral axis and along paths at the edges of the color gamut.
For systems that accept CMYK input data from any arbitrary source, it is desirable to smoothly blend that arbitrary CMYK data into a CMYK printing system that has been well-characterized with an output profile. U.S. Pat. No. 7,259,893 to Falk et al., entitled “Methods and apparatus for gray component replacement blending” teaches a means for blending GCR estimates from the arbitrary CMYK data with GCR estimates from CMYK values resulting from the output profile for a known printer. Both GCR estimates are made after converting the device dependent CMYK data to the device-independent CIELAB data and using L* data to approximate GCR levels. The estimated GCR levels for the arbitrary CMYK color and for the CMYK color from the output profile are determined by such blending techniques as linear or non-linear combinations of the GCR estimates, or they may be derived empirically. The CMY levels get adjusted to assure that the intended CIELAB values are achieved.
U.S. Patent Application Publication 2009/0296107 to Mestha et al., entitled “Method, apparatus and systems to retrieve GCRs from historical database,” teaches building a color profile from a GCR profile selected from a database of multiple GCR profiles based on predefined criteria to produce desired image quality. This retrieval of historical GCR data and subsequent GCR profile selection ensures similar color rendering, especially with regard to black ink usage on the same printer at different times or a different printer model of the same type.
U.S. Pat. No. 7,573,611 to Derhak et al., entitled “Gamut maximizing black generation for printers”, teaches a black generation strategy using independently controllable chromatic and achromatic curves, each including a CMY color space curve and a black curve. Input parameters such as black start, maximum black value, and curve type to control the rate of black ink addition are used to generate the chromatic and achromatic curves. This method maximizes the gamut of the device by providing richer dark region colors while allowing separate control of black ink addition in the chromatic and achromatic regions of color space.
In general, there are a variety of different design criteria that can be considered when determining the usage of K relative to the usage of CMY. For example transforms that use more CMY colorants and less K colorant tend to produce images with lower degrees of image noise visibility (i.e., “graininess”) because black ink dots are generally more visible than cyan, magenta or yellow ink dots. The image noise visibility concern is particularly important in certain regions of color space such as skin tones and blue skies, where observers tend to be quite sensitive to image noise. Therefore, many methods for building color transforms are designed to minimize the black ink usage, particularly in highlight and skin tone regions of color space. For example, U.S. Patent 2003/0025924 to Lammens et al., entitled “All-device-space automatic black replacement,” teaches replacement of pure black ink with cyan, magenta and yellow inks in mid-tone and highlight color regions in order to reduce image noise visibility and mask banding artifacts.
U.S. Pat. No. 7,236,263 to Okuyama et al., entitled “Image processing system and method for improved color conversion” teaches a system and method for converting scanner RGB data to CMY data and then to pixel-based CMYK data based on whether the pixel is in a black color region or a non-black color region. For all pixels that fall in a non-black color region, the K value is altered based on a weighting coefficient determined from the CMY values. For skin tones, the weighting coefficient is very low meaning that very little black ink gets laid down and amounts of cyan, magenta and yellow ink laid down are reduced from initial estimates based on the small amount of black that is used to produce each skin tone pixel.
One disadvantage of color transforms that use more CMY colorants and less K colorant is that they tend to be more sensitive to producing objectionable color variations as a result of printer process variations. For example, if the yellow color channel is printing too dark or too light, this can introduce objectionable color balance shifts which can cause the image to look too yellow or too blue. Such color shifts are generally much more objectionable than an overall shift in image density that can result when the density of a K color channel is too dark or too light. Color balance shifts are particularly objectionable for near-neutral colors. Therefore, neutrals that are formed using only CMY and no K will be very susceptible to objectionable color variations as the printing process varies.
FIG. 5 illustrates an L*-b* plot showing a calibrated neutral scale curve 100 corresponding to a neutral scale produced with equal CMY values for a well-calibrated printer. It can be seen that the b* values remain very close to 0 throughout the L* range. Uncalibrated neutral scale curves 102 and 104 show similar plots that result when the yellow color channel is out of calibration and is producing less yellow or more yellow, respectively, than it was intended to produce. The resulting color cast is quite significant, and would be objectionable for most observers.
One way to overcome the problem of objectionable color variations resulting from color printer variations is to introduce a printer calibration process for the imaging system. The printer calibration process will allow a color printer to produce aim neutral scales reliably over time for a particular printer, and across printers of the same model. Implementation of a printer calibration process that involves a manual measurement process is typically time-consuming and frustrating for a user. Furthermore, the quality of the results is often dependent on the care and skill of the user. Some printers have incorporated in-line measurement instruments to provide automatic calibration in order to enable a high degree of consistency without any user intervention. However, such automatic calibration systems tend to be impractical for many devices due to the cost of the additional components.
Furthermore, neutral colors produced using primarily cyan, magenta and yellow inks tend to be spectrally selective. This means that spectral reflectance is not constant as a function of wavelength. As a result, transforms that feature high CMY ink usage with low black ink usage cannot achieve color constancy for prints viewed under various sources of illumination. Color inconstancy problems tend to be most objectionable for near-neutral colors. Printer color calibration can not do anything to solve color inconstancy problems since they are not caused by variations in the colorant amounts.
One way to address the problems of color variations due to printer process variability and color inconstancy is to utilize color transforms that use lower CMY colorant levels and higher K colorant levels. Such color transforms have the additional advantage that they use a smaller total amount of colorant, thereby reducing materials costs. However, these color transforms suffer from a higher level of image noise visibility due to the increased black ink usage.
Some prior art printing systems have provided different color transforms that can be selected, either manually or automatically, to provide the preferred results based on image content. For example, a color transform featuring a high black ink usage can be provided for use with gray scale images which are particularly susceptible to printer process variability and color inconstancy artifacts. A color transform with a GCR strategy using lower levels of black ink can be provided for use with color images where image noise visibility is often a more critical requirement. However, the use of multiple color transforms based on image content is often considered to be impractical because it typically requires a more complex user interface and requires additional memory for storage of multiple color transforms.
There remains a need for a method to produce color transforms having a reduced sensitivity to color printer process variations for near-neutral colors while simultaneously having a reduced image noise visibility in other regions of color space, such as skin tones, where image noise can be particularly objectionable.